<template>
  <div class="dashboard-container">
    <div class="app-container">
      <UploadExcel :on-success="successFn" />
    </div>
  </div>
</template>

<script>
import { importEmployees } from '@/api/employees'
export default {
  methods: {
    async successFn(data) {
      // console.log(13, data)
      const newArr = data.results.map(item => {
        const obj = {
          '姓名': 'username',
          '手机号': 'mobile',
          '工号': 'workNumber',
          '入职日期': 'timeOfEntry',
          '转正日期': 'correctionTime'
        }
        const newObj = {}
        for (const key in item) {
          if (key === '入职日期' || key === '转正日期') {
            newObj[obj[key]] = this.formatExcelDate(item[key])
          } else {
            newObj[obj[key]] = item[key]
          }
        }
        return newObj
      })
      console.log(13, newArr)
      await importEmployees(newArr)
      this.$router.back()
    },
    /**
 * 格式化Excel表中存储的年月日日期
 * @param {number} num - excel存储的数字
 * @param {string} [format = '-'] - 年月日的间隔符，默认为'-'
 * @returns {string} 格式化后的日期
 */
    formatExcelDate(num, format = '-') {
      if (!/^\d+$/.test(num)) return
      num = parseInt(num)
      let millisecond = 0 // 转化后的毫秒数
      if (num > 60) { // 对大于60的日期进行减1处理
        millisecond = (num - 25568 - 1) * 3600 * 24 * 1000
      } else {
        millisecond = (num - 25568) * 3600 * 24 * 1000
      }
      const date = new Date(millisecond) // 根据转化后的毫秒数获取对应的时间
      const yy = date.getFullYear()
      const m = date.getMonth() + 1
      const mm = m >= 10 ? m : '0' + m
      const d = date.getDate()
      const dd = d >= 10 ? d : '0' + d
      return yy + format + mm + format + dd // 返回格式化后的日期
    }
  }
}
</script>

  <style>

  </style>
